Method of watermarking a color image by vectorial approach, method of detecting a mark of watermarking, corresponding devices, image and computer programs

ABSTRACT

A method of watermarking a color image that has at least three components. Such a method of watermarking comprises an insertion step of a mark of watermarking, on at least one point of the image, according to an insertion rule taking into account the relative position of at least three component vectors, for each of said components respectively, associated to said at least one point.

FIELD OF THE INVENTION

[0001] The field of the invention is that of the watermarking of stillcolor images. More precisely, the invention concerns a watermarkingtechnique which allows signatures to be incorporated into an image,taking into account the color dimension of the latter.

BACKGROUND OF THE INVENTION

[0002] The field of image tattooing, which is still called watermarking,is currently booming, and is the subject of much research, both in thefields of video sequences and still images.

[0003] We can currently distinguish two main families of imagewatermarking, respectively corresponding to the watermarking of graylevels images and of color images.

[0004] Indeed, the first years of research in the field of watermarkingwere mainly based on techniques for protecting gray levels images, andled to the use of three distinct fields of marking: the fields of space,frequency and multi-resolution.

[0005] The watermarking models in the space field (where the mark isapplied directly to the pixel values) have the advantage of onlyrequiring a short calculation time. They are generally resistant togeometrical attacks (for example rotation and changing of scale). Themethods proposed are histogram modification (Coltuc D. et al., “Imageauthentication by exact histogram specification”, workshop on multimediasignal processing, Cannes, France, October 2001) or again patchworktechniques (D. Gruhl, W. Bender, Moritomo, “Techniques for data hiding”in processing SPIE, volume 2420, page 40, February 1995).

[0006] As concerns the watermarking models in the frequency field, theyhave the advantage of being resistant to compression (such as JPEG forexample). The mark is applied to the coefficients resulting from aFourier type transformation (as presented for example by V. Solachidiset I. Pitas, “Self-similar ring shaped watermark embedding in 2-D DFTdomain”, 10^(th) European Signal Processing Conference EUSIPCO'2000,Tampere, Finland, pages 1977-1980, September 2000) or Discret Cosinus(as presented for example by F. Alurki and R. Mersereau, “A robustdigital watermark procedure for still images using DCT phasemodulation”, 10^(th) European Signal Processing Conference EUSIPCO'2000,Tampere, Finland, pages 1961-1964, September 2000).

[0007] Marking in the multi-resolution field offers several advantages.It is above all the field used in the most recent compression standards.It also allows the frequency band which will bear the mark to be chosen,thus permitting the risks of the image being damaged by the applicationof the mark to be reduced (as illustrated by D. Kundur and D.Hatzinakos, “Digital watermarking using multi-resolution waveletdecomposition”, Proceedings of IEEE ICASSP '98, vol. 5, pages 2969-2972, Seattle, Wash., USA, May 1998).

[0008] Apart from these watermarking techniques for gray levels images,a second main family of watermarking techniques for still imagesproposes taking into account the color dimension of the images.

[0009] In this family, we can first of all distinguish a firstsub-family of techniques consisting of adapting the gray levels methodsto the three color components. Parameters are then used to control theforce of the marking on each component in order to take into account thecharacteristics of the human viewing system.

[0010] A second sub-family groups methods which are specific to thecolor images. It takes into account the human viewing system and usesthe characteristics of the color representations.

[0011] For example, one particular method, specific to color images, isthat proposed by L. Akarun, N. Özdilek, B. U. Öztekin, “A NovelTechnique for Data Hiding in Color Paletted Images”, Proceedings of the10^(th) European Signal Processing Conference, EUSIPCO'00, Tampere,Finland, pages 123-126, September 2000.

[0012] The first step of this method consists of quantifying the colorspace using the ‘median-cut’ algorithm. This consists of iterativelypartitioning the color space with planes that are perpendicular to thecolor axes and passing through the median values of the data.

[0013] There are two possible cases:

[0014] all of the palette is used in the representation of the image, or

[0015] certain values of the palette are not used by the image.

[0016] The first case is then no longer adapted to the markingalgorithm. However the palette obtained includes colors that the humaneye cannot distinguish. By using this property, certain colors of thepalette can be liberated, so that they are not used in the image to bemarked.

[0017] The author proposes that two colors are indiscernible if ΔE<3where ΔE={square root}{square root over ((L₁−L₂)²+(a₁−a₂)²+(b₁−b₂)²)} inthe Lab space. A reminder is made that the Lab representation space is aperceptually uniform space. L represents the luminance and the a and bcomponents are chromatic.

[0018] Let M(i) be the mark, composed of colors that are not part of thepalette. The author points out that a binary mark (made up of twocolors) is more robust (the risk of detection error is thus reduced).

[0019] Let C be the most frequently used color of color histogram, eachabsciss corresponding to a color of the palette.)

[0020] The mark contains a lower number of elements than the number ofcolor pixels C, i<h(C). Each of these elements is indiscernible from thecolor C.

[0021] The marking consists of replacing the i^(th) pixel of color C byM(i).

[0022] Another original method is that proposed by S. Battiato, D.Catalano, G. Gallo, R. Gennaro, in “Robust Watermarking for Images basedon Color Manipulation”, Proceedings of the 3rd Workshop on Informationhiding, LNCS 1768, pages 302-317, Dresden, 1999. According to thismethod, the mark is not created for the image beforehand, but it is thecolorimetric content of the image which represents the mark. Onedisadvantage of this technique is that it requires a lot of data to bestored.

[0023] The color space proposed by the author respects two properties:

[0024] the space must be perceptually uniform (as are the Lab and Luvspaces) so that a Euclidian distance measurement can be assimilated to adifference in color for the human viewing system;

[0025] the switch to this space, noted LC₁C₂, must be rapid, simple andhave no loss of information.

[0026] The field of opposed colors is defined here from RGB, as follows:$\begin{matrix}{{RGB}->{{LC}_{1}C_{2}\text{:}}} & {{{LC}_{1}C_{2}}->{{RGB}\text{:}}} \\\{ {\begin{matrix}{{L = {R + G + B}};} \\{{C_{1} = {{2B} - R - G}};} \\{C_{2} = {R - {2G} + {b.}}}\end{matrix}\quad {and}}  & \{ \begin{matrix}{{R = {( {L + C_{2} - C_{1}} )/3}};} \\{G = {( {L - C_{2}} )/3}} \\{B = {( {C_{1} + L} )/3.}}\end{matrix} \end{matrix}$

[0027] According to the authors, this space is the closest to therepresentation of the chromatic channels of the human viewing system.

[0028] The marking is carried out as follows. The mark is a vector M(n),n=1, . . . , k, . . . , N where N is the number of colors of the imageand k is a color of the image. Let (LC₁C₂)_(k) be the color associatedto the index k, represented by a vector in the LC₁C₂ space. A radius isselected in a sphere defined around the coordinate point (LC₁C₂)_(k)randomly. For each pixel (x,y) corresponding to the color k, the vectorcorresponding to the (previously determined) radius is added to theinitial color vector to obtain the marked vector (LC₁C₂)_(k)′.

[0029] Each color is thus marked by adding a same vector. The markedimage is reconstructed by replacing the original colors with the markedcolors, by respecting the coordinates of the image pixels.

[0030] The mark is then formed by all of the colors of the originalimage.

[0031] Detection is made by comparing the marked image with the marksgenerated on all of the images processed. This is carried out asfollows. Firstly, it must be considered that the image on which thedetection is to be made has the same number of colors as the originalimage. The detection algorithm compares the image to each of therecorded marks. Color by color, a search is made for the closest mark(where the difference vectors between the two pixels of the samecoordinate are the most similar). The mark corresponding to the markedimage is that with the highest number of difference vectors between thecolors of the marked image and the original image in common.

[0032] It can be noted that the various publications concerning colorwatermarking techniques are generally consecrated to the integrity ofthe visual appearance and the robustness of these techniques againstclassic attacks is hardly developed.

[0033] Generally, for methods whose basic algorithm can be applied togray levels images, the marking uses the following technique:

[0034] switch in the transformed space (wavelet coefficients, discretecosine coefficients, etc.)

[0035] application of the following formula:

I′ _(W)(i,j)=I′(i,j)+α(i,j)M(i,j)

[0036] where I′_(W) represents the transform of the marked image (orcomponent), I′ the transform of the original image (or component), M themark, α the marking intensity control factor, and where i and jrepresent the coordinates of the processed pixel.

[0037] The algorithms based on the characteristics of the colorcomponents are more adapted to the characteristics of the human viewingsystem. The first article of Kutter M., Jordan F. and Bossen F,(“Digital Signature of Color Images using Amplitude Modulation”,Processing of SPIE storage and retrieval for image and video databases,San Jose, USA, volume 3022, number 5, pages 518-526, February 1997) oncolor watermarking proposed working on the blue component of the RGBsystem, for which the human eye is the least sensitive.

[0038] This idea was also taken up by A. Reed and B. Hannigan, in“Adaptive Color Watermarking”, Proceedings of SPIE, Electronic Imaging,volume 4675, January 2002. These authors propose working on the yellowcomponent of the system CMY (Cyan Magenta Yellow, which is acolorimetric space), as they considered that the human eye is lesssensitive to color variations on the yellow-blue axis.

[0039] Generally speaking, the blue component allows the mark to behidden more effectively (but it is not as strong) and the greencomponent allows the mark to be protected more effectively againstattacks (but with greater visual damage to the image). This is explainedby the fact that the human viewing system is more sensitive tovariations in green than in blue. The compromise between invisibilityand strength of the mark therefore depends on the colorimetric nature ofthe component.

[0040] Finally, a last technique, proposed by J. J. Chae, D. Mukherjee,and B. S. Manjunath, in “Color Image Embedding using MultidimensionalLattice Structures”, Proceeding of IEEE International Conference onImage Processing, Chicago, Ill., volume 1, pages 460-464, October 1998,is based on a vectorial type approach.

[0041] According to this technique, the first step of the markingconsists of breaking down into wavelets the initial image and thesignature (which may also be an image). A single breakdown level isused. In this way, the wavelet coefficients of the original image areobtained, noted (C_(Y),C_(U),C_(V))(x,y), for which each componentcorresponds to the color component of the YUV space, and the waveletcoefficients of the mark. The use of the YUV space (space used forvideo: Y is the luminance component, U and V are chromatic components)thus allows a direct adaptation of this technique to video documents.

[0042] The wavelet coefficients resulting from this breakdown of themark are quantified in β levels. We thus obtain a vector {right arrowover (M)}, (M_(Y),M_(U),M_(V))(x,y) for a color mark and M(x,y) for agray levels, containing (s_(i)) elements where 1<i<β.

[0043] The integration of the mark can be written as follows:

(C _(Y) ,C _(U) ,C _(V))_(i)′(x,y)=(C _(Y) ,C _(U) ,C_(V))_(i)(x,y)+α{right arrow over (M)}(s _(i))

[0044] where α is the control factor for the marking force.

[0045] The detection of the mark is then carried out as follows. Afterapplication of the transform in wavelets onto the marked image, theresulting coefficients are quantified in β levels.

[0046] To estimate the closest vector to that used for the mark, asearch is carried out for the quantification value of the closestcoefficient to those of the initial image (the mark is then detected,element by element).

[0047] The image corresponding to the mark detected can thus bereconstructed by transformation of the inverse wavelets.

[0048] All of the gray levels or color watermarking techniques describedabove have a number of disadvantages.

[0049] Therefore, the watermarking techniques for color images based ongray levels algorithms do not permit the color dimension of the imagesto be taken into account. Consequently, they do not permit thecompromise between the invisibility and the strength of the mark to beoptimized.

[0050] The color image watermarking techniques are very complex and allattempt to satisfy an invisibility objective for the mark. In otherwords, they are not strong enough to resist classic attacks such ascompression or filtering.

[0051] The technique proposed by Chae et al. described above, eventhough it uses a vectorial approach, has the disadvantage of not beingresistant to compression. Among others, this marking method does notallow making documents secure to be envisaged. Finally, this techniquedoes not take into account the color dimension of the image, as itattributes the same marking force to the three color components of theimage.

[0052] Finally, none of the techniques of the prior art using a waveletbreakdown offers blind marking, permitting detection of the mark withoutthe original image being required. Furthermore, none of these techniquesoffers resistance to JPEG compression, median filtering and the additionof noise.

[0053] The particular aim of the invention is to overcome thesedisadvantages of the prior art.

[0054] More precisely, one aim of the invention is to provide a colorwatermarking technique permitting one or more signatures to beincorporated to a color image.

[0055] In other terms, one aim of the invention is to provide atechnique for making documents secure by the invisible insertion of amark.

[0056] Another aim of the invention is to implement such a techniquethat is resistant to most attacks. In particular, one aim of theinvention is to provide such a technique which is resistant tocompression (especially JPEG type), to filtering (especially by a medianfilter) and the addition of noise.

[0057] The invention has another aim of implementing such a techniquewhich permits blind detection, which is to say that does not require theoriginal image, of the mark in an image.

[0058] Another aim of the invention is to provide such a techniquepermitting the visibility of the mark to be reduced in comparison to thetechniques of the prior art.

[0059] These aims, as well as others which will become clearer furtheron, are achieved by a color watermarking process with at least threecomponents.

SUMMARY OF THE INVENTION

[0060] According to the invention, such a process comprises a step wherethe watermark is inserted, on at least one point of the image, accordingto an insertion rule taking into account the relative position of atleast three component vectors, for each of said components respectively,associated to said at least one point.

[0061] In this way, the invention is based on a completely new andinventive approach of color images watermarking. In fact, the inventionis based on a vectorial approach, permitting, in comparison with thetechniques of the prior art, to take into account the color dimension ofthe image.

[0062] The watermark is therefore no longer, contrary to the techniquesof the prior art, applied identically to the three color components ofthe image; in other terms, whereas, according to the prior art,independent marking of the three component vectors of the image wascarried out, according to the invention, these three vectors are nowtaken into account in synergy for the insertion of the mark.

[0063] The implementation of a vectorial approach permits, in terms ofresistance, to obtain more stable responses than with the techniques ofthe prior art in the field of wavelets, such as that of Kundur et al.mentioned previously, as the watermarking technique in the waveletfield. Such a vectorial approach also permits the variations induced bythe mark in the color field to be minimized, and therefore slightlyimprove the invisibility of the mark with respect to the techniques ofthe prior art.

[0064] Advantageously, for each of the said points concerned, twovectors are selected as reference and one vector to be marked in orderto bear the said watermark.

[0065] It can be noted that the invention consists therefore, contraryto the prior art, of marking the component vectors (i.e. color vectorsfor example), and not just coefficients of the image.

[0066] Preferably, the said vector to be marked is the central vector,situated between the said reference vectors.

[0067] Advantageously, the distances are calculated two by two betweensaid three vectors, said reference vectors being the furthest apart fromone another.

[0068] Preferably, a frontier is determined between the said referencevectors, defining two zones respectively associated to the binary values“0” and “1”.

[0069] Two half spaces are thus created, respectively associated to eachof said reference vectors, and corresponding to a value “0” or “1” ofthe mark that is to be inserted.

[0070] Advantageously, said frontier is defined by the bisector betweensaid reference vectors.

[0071] According to one advantageous characteristic of the invention,the marking of the said vector to be marked comprises a possible shiftof the said vector to be marked to one of the said zones, according tothe binary value of the marking to be applied.

[0072] Therefore, if a value “0” mark is to be inserted on the vector tobe marked and the vector to be marked is in the zone or the half spaceassociated to the binary value “1”, its end is moved so that it ispositioned in the other half space, or zone, associated to the value“0”.

[0073] If a value “0” mark is to be inserted on the vector to be markedand the vector to be marked is already in the zone associated to thebinary value “0”, its end may also be moved so that it is moved closerto the reference vector located in this half space, in order to increasethe resistance of the mark (while remaining of course in the half spaceassociated to the binary value “0”).

[0074] According to another advantageous characteristic of theinvention, the said movement has a variable amplitude, according to amarking force selected to suit at least one local characteristic of thesaid image.

[0075] In this way, according to the colorimetric characteristics orlocal texture characteristics of the image, a mark that is more or lessvisible and more or less resistant can be chosen, according to themarking force selected. Such a marking force may adopt for example avalue included between 0 and 1, a nil force corresponding to a mark withlow resistance and invisible, and a force equal to 1 corresponding to astrong but visible mark.

[0076] According to one advantageous variant of the invention, such awatermarking process also comprises a wavelet transformation step foreach of the said components of the image, and the said three componentvectors are determined, for each point of at least one level ofbreakdown of the said wavelet transformation, for each of the saidcomponents respectively.

[0077] The invention therefore combines with the vectorial approach abreakdown into wavelets of the image. The use of such a wavelettransformation advantageously permits the technique of the invention tobe more resistant to JPEG type compression attacks, or median filteringor the addition of noise.

[0078] It can be noted that by “point”, it is meant here a pixelposition in a level of breakdown of the image, as illustrated by FIG.10, which represents an image scale E 101, and the three detailed imagesD_(N) ^(1,R) 102, D_(N) ^(2,R) 103, D_(N) ^(3,R) 104 for the redcomponent of a wavelet breakdown in an RGB system. The 105 “point ” isdefined by a same pixel position in each of the three detailed imagesreferenced 102 to 104.

[0079] Preferably, at least two vector marking conventions are provided.

[0080] According to an advantageous characteristic of the invention, themarking convention selected for a given image is that limiting the risksof conflicts when detecting the said mark.

[0081] Preferably, one of the said conventions is selected according tothe number of reference vectors present in the said image for each ofthe said components.

[0082] Thus, in an RGB type system for example, the number of times thatthe red, green and blue vectors are chosen as reference or markervectors is determined, and the marking convention permitting the risksof conflict during detection of the mark to be minimized is deduced. Forexample, a marking convention is selected so that the vector the leastoften marked is situated in the conflict zone.

[0083] Preferably, the said marking is, at least in normal situations,calculated using the following equation:

{right arrow over (V)} _(M,W)(x,y)={right arrow over (V)} _(R)(x,y)−(1−F_(M))({right arrow over (V)} _(R)(x,y)−{right arrow over (V)} _(M)(x,y))

[0084] where {right arrow over (V)}_(M)(x,y) is the said vector to bemarked, {right arrow over (V)}_(R)(x,y) is one of the said referencevectors, F_(M) is the said marking force and {right arrow over(V)}_(M,W)(x,y) is the said marked vector.

[0085] Preferably, in the event of a conflict, the said marking iscalculated using the following equation:

{right arrow over (V)} _(M,W)(x,y)={right arrow over (V)}_(R)(x,y)−beta.(1−F _(M))({right arrow over (V)} _(R)(x,y)−{right arrowover (V)} _(M)(x,y)),

[0086] where beta<1.

[0087] Advantageously, such a watermarking process comprises, after thesaid step of associating a watermark, and an inverted wavelettransformation step, providing a marked image.

[0088] In this way, after carrying out a wavelet transformation of thevarious color components of the image, and after having inserted thewatermark on the color vectors, a marked image is reconstructed byinverted wavelet transformation.

[0089] Advantageously, the said mark is a pseudo-random binary signaturewritten redundantly.

[0090] The redundancy of the insertion of the mark permits betterprotection of the image and a higher probability that the watermark willbe detected.

[0091] Preferably, the said components belong to the group comprising:

[0092] the RGB components;

[0093] the YUV components;

[0094] the CMY components.

[0095] More generally, all of the spaces where the color is representedcan be sued, whether it be the spaces defined by the CIE (InternationalLighting Commission) or original spaces.

[0096] The invention also concerns a device for watermarking a colorimage, with three components, and comprising means for inserting awatermark, on at least one point of the image, according to an insertionrule taking into account the relative position of three componentvectors, for each of the said components respectively, associated to theat least said one point.

[0097] The invention also concerns a computer programme comprisingprogramme code instructions recorded on a support that may be used in acomputer for watermarking a color image, with three components.According to the invention, the said programme comprises programmingmeans that may be read by the computer to carry out an insertion stepfor a watermark, on at least one point of the image, according to aninsertion rule taking into account the relative position of threecomponent vectors, for each of the said components respectively,associated to the said at least one point.

[0098] The invention also concerns a color image with three componentsand comprising a watermark obtained by insertion of a watermark, on atleast one point of the image, according to an insertion rule taking intoaccount the relative position of three component vectors, for each ofthe said components respectively, associated to the said at least onepoint.

[0099] The invention also concerns a watermark detection process for awatermarked image, made according to the previously describedwatermarking process. According to the invention, such a detectionprocess comprises a step for recovering a watermark, on at least onepoint of the image, according to a recovery rule taking into account therelative position of three component vectors, for each of the saidcomponents respectively, associated to the said at least one point.

[0100] Preferably, the said recovery step comprises a sub-step forcalculating the distances two by two between the said three vectors, andthe said two vectors the furthest away from one another are thereference vectors, the third vector is the marked vector bearing thesaid watermark.

[0101] Advantageously, a frontier between the said reference vectorsdefining two zones respectively associated to the binary values “0” and“1”, the said recovery step also comprises an identification sub-stepfor the zone in which the said marked vector is situated, and a step forassociating a corresponding binary value.

[0102] Advantageously, the said mark is recovered at least twice, and acorrelation calculation is used with respect to a reference signature,in order to decide if the watermark has been detected correctly or not.

[0103] The invention also concerns a device for detecting a watermark ina watermarked image, made according to the watermarking processpreviously described. According to the invention, such a devicecomprises means for recovering a watermark, on at least one point of theimage, according to a recovery rule taking into account the relativeposition of three component vectors, for each of the said componentsrespectively, associated to the said at least one point.

[0104] The invention also concerns a computer programme comprisingprogramme code instructions stored on a support that may be used on acomputer to detect a watermark in a watermarked image, made according tothe process previously described. Such a programme comprises programmingmeans that may be read by a computer to carry out a recovery step for awatermark, on at least one point of the image, according to a recoveryrule taking into account the relative position of three componentvectors, for each of the said components respectively, associated to thesaid at least one point.

BRIEF DESCRIPTION OF THE DRAWINGS

[0105] Other characteristics and advantages of the invention will becomeclearer upon reading the following description of a preferredembodiment, provided simply as a non-restrictive illustration, and theappended diagrams among which:

[0106]FIG. 1 shows a block diagram of the multi-resolution analysisprinciple for an image I by wavelet transformation, implementedaccording to the invention;

[0107]FIG. 2 illustrates the principle for obtaining images atresolution j level from the image scale at level j+1 by wavelettransformation, according to the principle of FIG. 1;

[0108]FIG. 3 describes a structure of wavelet coefficients formed afterthe wavelet transformation of FIG. 2; 1 shows a block diagram of themulti-resolution analysis

[0109]FIG. 4 illustrates the generation of a mark by redundancy of thesignature;

[0110]FIG. 5 presents the construction step of the reference vectors andthe marking vector;

[0111]FIGS. 6a to 6 c illustrate the various marking conventions usedaccording to the invention;

[0112]FIG. 7 illustrates one possible example of the position of theoriginal vectors, as well as the two marking vector movements that canbe envisaged for this case;

[0113]FIGS. 8a and 8 b respectively present an example of an originalimage and a corresponding image marked using the watermarking techniqueof the invention;

[0114]FIGS. 9a to 9 c present, in the form of graphs, the results ofresistance tests of the watermarking technique of the invention, on theexample of the image of FIG. 8b;

[0115]FIG. 10 states the notion of “point” of an image, whichrepresents, as part of a wavelet transformation, a pixel position in abreakdown level.

DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0116] The general principle of the invention is based on taking intoaccount the color dimension of the images, and proposes a vectorialapproach of watermarking. The invention thus permits vectorial markingtaking into account, in synergy, the three color vectors of the image.

[0117] In one specific embodiment of the invention, which will bedescribed in all of the rest of the document, this vectorial approach iscombined with a wavelet breakdown of the color components of the image.

[0118] In this specific embodiment, the invention therefore consists ofinserting a watermark into a color image by carrying out the followingsteps:

[0119] Transformation of each component of the color image in thewavelet field,

[0120] Pseudo-random independent generation of the mark based on a key,

[0121] Definition of all of the color vectors

[0122] For each coordinate of the passing band components:

[0123] Definition of 2 reference vectors and one vector which will bearthe watermark (the reference vectors are the vectors which are thefurthest away, the mark is thus applied to the “central” vector, whichminimizes the visual impact)

[0124] Definition of a rule which controls the marking force anddetermines the insertion space associated to the bit 1 and bit 0.

[0125] Reconstruction of the color image marked by the wavelettransformation, taking into account the modifications by marking of thewavelet coefficients.

[0126] These various operations are described in greater detail furtheron in the document, in relation to the figures.

[0127] 1. Wavelet Transformation

[0128] The first step implemented according to the invention is awavelet transformation step. A reminder is made that the wavelettransformation is a powerful mathematical tool allowing amulti-resolution analysis of a function, as described by Mallat S. (in“A Theory for Multi-resolution Signal Decomposition: the WaveletRepresentation”, IEEE Transactions on Pattern Analysis and MachineIntelligence, Vol. 11, No. 7, July 1989, pp. 674-693), by Stollnitz E.J., DeRose T. D., et Salesin D. (in “Wavelets for Computer Graphics: APrimer-Part 1”, IEEE Computer Graphics and Applications, May 1995, pp.76-84 or again in “Wavelets for Computer Graphics: A Primer-Part 2”,IEEE Computer Graphics and Applications, July 1995, pp. 75-85).

[0129] Appendix 1, which is an integral part of this patent application,makes a reminder of the essential aspects of the wavelet theory.

[0130] In the scope of the invention, the functions considered aredigital images, which is to say discrete bi-dimensional functions. Withno loss of general features, it is supposed that the processed imagesare sampled on a discrete grid of n lines and m columns and at a valuein a luminance space sampled at 256 values. Furthermore, it is supposedthat n=2^(k)(kεZ) and that m=2^(l)(lεZ).

[0131] If we note that I the original image, this therefore gives:$ {I\text{:}} \middle| {\begin{matrix}{{\lbrack {0,m} \rbrack \times \lbrack {0,n} \rbrack}->\lbrack {0,255} \rbrack} \\ ( {x,y} )\mapsto{I( {x,y} )} \end{matrix}.} $

[0132] The wavelet transformation of the image I 10 makes possible amulti-resolution representation of I, as illustrated by FIG. 1. At eachlevel of resolution 2^(j)(j≦−1), the representation of I 10 is providedby a rough image A₂ _(^(j)) I 11 and by three detailed images D₂ _(^(j))¹I 12, D₂ _(^(j)) ²I 13 and D₂ _(^(j)) ³I 14. Each of these images is ofthe size 2^(k+j)×2^(l+j).

[0133] Again, at the following level of resolution, the rough image A₂_(^(j)) I 11 may be represented by a rough image A₂ _(^(j−1)) I 11 ₁ andby three detailed images D₂ _(^(j−1)) ¹I 12 ₁, D₂ _(^(j−1)) ²I 13 ₁, andD₂ _(^(j−1)) ³I 14 ₁.

[0134] The wavelet transformation requires the selection of a scalefunction Φ(x) as well as the selection of a wavelet function Ψ(x). Basedon these two functions, we derive a scale filter H and a wavelet filterG whose respective pulse responses h and g are defined by:

h(n)=<φ₂ _(⁻¹) (u),φ(u−n)>∀nεZ

g(n)=<ψ₂ _(⁻¹) (u),φ(u−n)>∀nεZ.

[0135] Let us note respectively {tilde over (H)} and {tilde over (G)}the mirror filters of H and G (i.e. {tilde over (h)}(n)=h(−n) and {tildeover (g)}(n)=g(−n)).

[0136] We can therefore show, as illustrated by FIG. 2, that:

[0137] A₂ _(^(j)) I 20 can be calculated by convoluting A₂ _(^(j+1)) I21 with {tilde over (H)} in both dimensions and by sub-sampling a factortwo (23, 24) in both dimensions;

[0138] D₂ _(^(j)) ¹I 22 can be calculated by:

[0139] 1. convoluting A₂ _(^(j+1)) I 21 with {tilde over (H)} in the ydirection and by sub-sampling a factor two (23) in this same direction;

[0140] 2. convoluting the result of step 1) with {tilde over (G)} in thex direction and by sub-sampling a factor two (25) in this samedirection.

[0141] D₂ _(^(j)) ²I 26 can be calculated by:

[0142] 1. convoluting A₂ _(^(j+1)) I 21 with {tilde over (G)} in the ydirection y and by sub-sampling a factor two (27) in this samedirection;

[0143] 2. convoluting the result of step 1) with {tilde over (H)} in thex direction and by sub-sampling a factor two (28) in this samedirection.

[0144] D₂ _(^(j)) ³I 30 can be calculated by:

[0145] 1. convoluting A₂ _(^(j+1)) I 21 with {tilde over (G)} in the ydirection and by sub-sampling a factor two (27) in this same direction;

[0146] 2. convoluting the result of step 1) with {tilde over (G)} in thex direction and by sub-sampling a factor two (29) in this samedirection.

[0147] In one particular embodiment of the invention, the Daubechiesbase is used, and the level of resolution 2^(r)(r≦−1) where r=−4 isselected.

[0148] The Daubechies wavelets have a minimum sized support for a givennumber of nil moments. The compact support Daubechies wavelets arecalculated from conjugated mirror filters h with finite pulse responses.The length of the filter determines the time support of the associatedwavelet as well as the number of nil moments. There is no explicitformula for the Daubechies filters regardless of the order of thefilter. The filters are constructed based on the resolution of thefollowing problem:

[0149] Let${\hat{h}(w)} = {\sum\limits_{n = 0}^{N - 1}{{h\lbrack n\rbrack}^{{- }\quad {nw}}}}$

[0150] be the Fourier transformed trigonometric polynomial of theDaubechies filter, therefore a polynomial R(e^(−iw)) has to beconstructed with a minimum degree such that${\hat{h}(w)} = {\sqrt{2}( \frac{1 + ^{{- }\quad w}}{2} )^{P}{R( ^{{- }\quad w} )}}$

[0151] and |ĥ(w)|²+|ĥ(w+π)|²=2. According to the invention, the filterwith eight coefficients is preferred, which corresponds to the followingpolynomial:

ĥ(w)=0,2304+0,7148.e ^(−iw)+0,6309.e ^(−i2w)−0,028.e ^(−i3w)−0,187.e^(−i4w)+0,0308.e ^(−i5w)+0,0329.e ^(−i6w)0,0106.e ^(−i7w)

[0152]FIG. 3 illustrates the construction, after the wavelettransformation has been carried out to a level of minimum resolution2^(r)(r≦−1), of a wavelet coefficient structure:

[0153] Each pixel p(x,y) referenced 34 on the image A₂ _(^(r)) I is theroot of a tree structure;

[0154] Each root p(x,y) is attributed three thread knots referenced 31to 33 designated by the wavelet coefficients on the three detailedimages D₂ _(^(r)) ^(s)I (s=1,2,3) located in the same position (x,y);

[0155] Due to the sub-sampling using a factor two carried out by thewavelet transformation at each change of resolution (see FIG. 2), eachwavelet coefficient D₂ _(^(r)) ^(s)(x,y) (s=1,2,3) corresponds to a zonewhose size is 2×2 pixels in the detailed image corresponding to theresolution 2^(r+1). This zone is located in (2 x, 2 y) and all of thewavelet coefficients belonging to it become thread knots of D₂ _(^(r))^(s)(x,y).

[0156] Recursively, the tree structure is thus constructed in which eachwavelet coefficient D₂ _(^(u)) ^(s)(x,y) (s=1,2,3 et 0>u>r) has fourthread knots designated by the wavelet coefficients of the image D₂_(^(u+1)) ^(s)I located in the region situated in (2 x, 2 y) whose sizeis 2×2 pixels.

[0157] Once the tree structure has been constructed, each waveletcoefficient D₂ _(^(r)) ^(s)(x,y) (s=1,2,3) corresponds to a region whosesize is 2^(−r)×2^(−r) pixels in the detailed image D₂ _(⁻¹) ^(s)I.

[0158] 2. Construction of the Mark

[0159] A binary S signature of N² bits is generated in a pseudo-randommanner, checked by a key K. This signature, written in the form of amatrix {square root}{square root over (N)}*{square root}{square rootover (N)} is then written in a redundant manner to obtain the mark W.The redundancy can be carried out bit by bit or signature by signature,as is illustrated in FIG. 4.

[0160] In a particular embodiment of the invention, the signature S 40is a 16 bit binary signature and is generated in a pseudo-random mannerusing a key K=9. This bitmap signature (4*4) 40 is then copied T timesto create a mark, as in the first example 41 shown in FIG. 4. For animage of size 256*256, knowing that the wavelet coefficients employedare those defined for the 4 ^(th) scale of decomposition, the mark willbe of size 16*16. The signature is therefore repeated 16 times.

[0161] We note that in FIG. 4, the black squares illustrate a bit by 1and the white squares a bit by 0.

[0162] 3. Insertion of the Mark

[0163] 3.1 Definition of the Vectors

[0164] The vectors are defined from the decomposition into wavelets atthe scale −r, for each co-ordinate (x,y) of the three detailed images D₂_(^(j)) ¹I 22, D₂ _(^(j)) ²I 26, D₂ _(^(j)) ³I 30, and for each of thethree designated colored components I={A, B, C}.

[0165] A, B and C are components that depend on the representation space(ABC can be RGB, XYZ, YUV, etc.).

[0166] We thus obtain, for each co-ordinate (x,y) 50 of the detailedimages, the following three vectors, illustrated in FIG. 5:$\begin{matrix}{{{{\overset{arrow}{V}}_{A}( {x,y} )} = \{ {{D_{2^{j}}^{1}{A( {x,y} )}},{D_{2^{j}}^{2}{A( {x,y} )}},{D_{2^{j}}^{3}{A( {x,y} )}}} \}},} \\{{{{\overset{arrow}{V}}_{B}( {x,y} )} = \{ {{D_{2^{j}}^{1}{B( {x,y} )}},{D_{2^{j}}^{2}{B( {x,y} )}},{D_{2^{j}}^{3}{B( {x,y} )}}} \}},} \\{{{\overset{arrow}{V}}_{C}( {x,y} )} = {\{ {{D_{2^{j}}^{1}{C( {x,y} )}},{D_{2^{j}}^{2}{C( {x,y} )}},{D_{2^{j}}^{3}{C( {x,y} )}}} \}.}}\end{matrix}$

[0167] In a particular embodiment of the invention, we examine the imagein the representation space RGB, and the vectors are defined for eachcomponent (R, G and B) from the wavelet coefficients of the 4^(th) scaleof decomposition (r=4): $\begin{matrix}{{{{\overset{arrow}{V}}_{R}( {x,y} )} = \{ {{D_{2^{- 4}}^{1}{R( {x,y} )}},{D_{2^{- 4}}^{2}{R( {x,y} )}},{D_{2^{- 4}}^{3}{R( {x,y} )}}} \}},} \\{{{{\overset{arrow}{V}}_{G}( {x,y} )} = \{ {{D_{2^{- 4}}^{1}{G( {x,y} )}},{D_{2^{- 4}}^{2}{G( {x,y} )}},{D_{2^{- 4}}^{3}{G( {x,y} )}}} \}},} \\{{{\overset{arrow}{V}}_{B}( {x,y} )} = \{ {{D_{2^{- 4}}^{1}{B( {x,y} )}},{D_{2^{- 4}}^{2}{B( {x,y} )}},{D_{2^{- 4}}^{3}{B( {x,y} )}}} \}}\end{matrix}$

[0168] 3.2 Calculation of Distances, Reference Vectors and MarkedVectors

[0169] For each co-ordinate of the detailed images, the distancesbetween any two vectors are calculated: $\begin{matrix}{{D_{A,B}( {x,y} )} = {{{{\overset{arrow}{V}}_{A}( {x,y} )} - {{\overset{arrow}{V}}_{B}( {x,y} )}}}} \\{{D_{A;C}( {x,y} )} = {{{{\overset{arrow}{V}}_{A}( {x,y} )} - {{\overset{arrow}{V}}_{C}( {x,y} )}}}} \\{{D_{B,C}( {x,y} )} = {{{{\overset{arrow}{V}}_{B}( {x,y} )} - {{\overset{arrow}{V}}_{C}( {x,y} )}}}}\end{matrix}$

[0170] The greatest distance is defined by the two reference vectors{right arrow over (V)}_(R) ₁ 51 and {right arrow over (V)}_(R) ₂ 52 (seeFIG. 5). It is the third vector {right arrow over (V)}_(M) 53 which willbe marked.

[0171] Thus, if D_(A,B)(x,y)>D_(A,C)(x,y) and D_(A,B)(x,y)>D_(B,C)(x,y),then {right arrow over (V)}_(A)(x,y) and {right arrow over (V)}_(B)(x,y)are the reference vectors and {right arrow over (V)}_(C)(x,y) is thevector which will bear the mark.

[0172] If D_(A,C)(x,y)>D_(A,B)(x,y) and D_(A,C)(x,y)>D_(B,C)(x,y), then{right arrow over (V)}_(A)(x,y) and {right arrow over (V)}_(C)(x,y) arethe reference vectors and {right arrow over (V)}_(B)(x,y) is the vectorwhich will bear the mark.

[0173] If D_(B,C)(x,y)>D_(A,B)(x,y) and D_(B,C)(x,y)>D_(A,C)(x,y), then{right arrow over (V)}_(B)(x,y) and {right arrow over (V)}_(C)(x,y) arethe reference vectors and {right arrow over (V)}_(A)(x,y) is the vectorwhich will bear the mark.

[0174] In a particular embodiment of the invention, the distancesbetween the vectors are calculated, between any two, for each of the 256possible co-ordinates (16*16 wavelet coefficients in the detailedimages). $\begin{matrix}{{D_{R,G}( {x,y} )} = {{{{\overset{arrow}{V}}_{R}( {x,y} )} - {{\overset{arrow}{V}}_{G}( {x,y} )}}}} \\{{D_{R,B}( {x,y} )} = {{{{\overset{arrow}{V}}_{R}( {x,y} )} - {{\overset{arrow}{V}}_{B}( {x,y} )}}}} \\{{D_{G,B}( {x,y} )} = {{{{\overset{arrow}{V}}_{G}( {x,y} )} - {{\overset{arrow}{V}}_{B}( {x,y} )}}}}\end{matrix}$

[0175] If D_(R,G)(x,y)>D_(R,B)(x,y) and D_(R,G)(x,y)>D_(G,B)(x,y), then{right arrow over (V)}_(R)(x,y) and {right arrow over (V)}_(G)(x,y) arethe reference vectors and {right arrow over (V)}_(B)(x,y) the vectorwhich will bear the mark.

[0176] If D_(R,B)(x,y)>D_(R,G)(x,y) and D_(R,B)(x,y)>D_(G,B)(x,y), then{right arrow over (V)}_(R)(x,y) and {right arrow over (V)}_(B)(x,y) arethe reference vectors and {right arrow over (V)}_(G)(x,y) the vectorwhich will bear the mark.

[0177] If D_(G,B)(x,y)>D_(R,G)(x,y) and D_(G,B)(x,y)>D_(R,B)(x,y), then{right arrow over (V)}_(G)(x,y) and {right arrow over (V)}_(B)(x,y) arethe reference vectors and {right arrow over (V)}_(R)(x,y) the vectorwhich will bear the mark.

[0178] 3.3 Definition and Choice of the Marking Agreement

[0179] For each co-ordinate of the detailed images, we try to know thenumber of times the vectors {right arrow over (V)}_(A)(x,y), {rightarrow over (V)}_(B)(x,y) and {right arrow over (V)}_(C)(x,y) are used asreferences. This stage thus allows to choose the best agreement for theinsertion operation (see FIGS. 6a to 6 c), in order to minimize theconflict which will be explained in fuller detail in §3.5.

[0180] If {right arrow over (V)}_(A)(x,y) is the least used vector as areference, the choice will be for agreement 3, illustrated in FIG. 6c.

[0181] If {right arrow over (V)}_(B)(x,y) is the least used vector as areference, the choice will be for agreement 1, illustrated in 6 a.

[0182] If {right arrow over (V)}_(C)(x,y) is the least used vector as areference, the choice will be for agreement 2, illustrated in FIG. 6b.

[0183] Thus, in case of the “Home” image illustrated in FIGS. 8a(original image) and 8 b (marked image), the vector {right arrow over(V)}_(R)(x,y) is used 235 times as a reference vector, the vector {rightarrow over (V)}_(G)(x,y) 108 times and the vector {right arrow over(V)}_(B)(x,y) 169 times. To minimize the conflicts, we therefore useagreement 1, shown in FIG. 6a.

[0184] However, it is recommended to make a precise choice in the caseof small images. The automatic choice of the marking agreement is betteradapted to large size images (at least several thousand pixels).

[0185] 3.4 Insertion Operation

[0186] Marking consists in modifying the vector by placing its endnearer to the end of one of the two reference vectors, on the basis ofthe value of the mark (0 or 1), and this being for each co-ordinate 50,as is illustrated in FIG. 5. We note {right arrow over (V)}_(R1)(x,y)and {right arrow over (V)}_(R2)(x,y) (51 and 52) as the referencevectors and {right arrow over (V)}_(M)(x,y) as the vector to be marked53.

[0187] Generally speaking, the marking is in the form of:

{right arrow over (V)} _(M,W)(x,y)={right arrow over (V)} _(R)(x,y)−(1−F_(M))({right arrow over (V)} _(R)(x,y)−{right arrow over (V)}_(M)(x,y))  (1)

[0188] with depending on the case: {right arrow over (V)}_(R)={rightarrow over (V)}_(R1) or {right arrow over (V)}_(R)={right arrow over(V)}_(R2) according to the value of M and the chosen agreement.

[0189] F_(M) represents the marking force applied to the vector withM={A, B, C}. The marking force can thus be adapted according to thelocal characteristics (colorimetric or texture) of the image.

[0190] Two possible situations could develop, as is illustrated for aparticular case in FIG. 7.

[0191] Depending on the chosen agreement and the value of the markW(x,y):

[0192] the vector {right arrow over (V)}_(M)(x,y) 73 is already in thecorrect half space where {right arrow over (V)}_(M,W)(x,y) must bepositioned. In this case, the formula (1) can be directly applied to{right arrow over (V)}_(M)(x,y) 73. This case is illustrated in FIG. 7,in consideration of the particular case where W(x,y)=1, and where theagreement imposes that {right arrow over (V)}_(M,W)(x,y) is in the halfspace containing {right arrow over (V)}_(R2)(x,y) 72.

[0193] the vector {right arrow over (V)}_(M)(x,y) 73 is not in thecorrect half space where {right arrow over (V)}_(M,W)(x,y) must bepositioned. In this case, prior to applying the formula (1) to {rightarrow over (V)}_(M)(x,y) 73, the position of the end of this vector mustbe modified. To do so, this end must be displaced in a collineardirection to the vector {right arrow over (V)}_(col)(x,y)={right arrowover (V)}_(R1)(x,y)−{right arrow over (V)}_(R2)(x,y), for a distance(D_(m)+ε), where D_(m) is equivalent to the distance between {rightarrow over (V)}_(M)(x,y)73 and (P_(M)) (where P_(M) is the borderbetween the two half spaces associated to each of the reference vectors(71 and 72). Preferably we choose ε equals 10% of D_(m), so that {rightarrow over (V)}_(M)(x,y) 73 does not get confused with (P_(M)). Thiscase is illustrated in FIG. 7, in consideration of the particular casewhere W(x,y)=0, and where the agreement imposes that {right arrow over(V)}_(M,W)(x,y) is in the half space containing {right arrow over(V)}_(R1)(x,y) 71.

[0194] We note that the case where F_(M)=0, the marking is of minimalrobustness. The vector {right arrow over (V)}_(M)(x,y) 73 becomes {rightarrow over (V)}_(M,W)(x,y), by simply displacing it (if necessary) inthe half space corresponding to the positions of the reference vectors71 and 72, the value of the mark and the chosen agreement. The image isthus degraded to the minimum.

[0195] In the case where F_(M)=1, the marking force is at the maximum.The mark is very robust, but has a high probability of being visible.{right arrow over (V)}_(M,W)(x,y) thus becomes confused with one of thereference vectors 71 and 72 on the basis of the previously indicatedsituation.

[0196] The fact of choosing an intermediary value of F_(M) allows tocontrol the compromise between the invisibility and the robustness ofthe mark.

[0197] 3.5 Conflict

[0198] The marking agreement diagrams define the direction of themarking for each of the possible situations. In the case where themarking force F_(M)=1, that being at the maximum, the marked vectorbecomes equal to a reference vector.

[0199] Thus, in FIGS. 6a to 6 c, we note that, for each of theagreements, the bits of the mark are opposite for one of the branches ofthe agreement triangles. A conflict is thus possible. Indeed, during thetransmission of the marked image or the processes it can undergo, thetwo confused vectors can be substantially modified. It is thereforepossible that the reference vector becomes the marked vector and viceversa.

[0200] During the detection of the mark (which will be described infuller detail in §5 below), detection errors can thus be integrated dueto this conflict. The conflict is minimized if the chosen agreementminimizes this situation. The agreement choice stage proposed in §4.3above is therefore particularly important.

[0201] In the case of a conflict, the marking operation becomes:

{right arrow over (V)} _(M,W)(x,y)={right arrow over (V)}_(R)(x,y)−beta.(1−F _(M))({right arrow over (V)} _(R)(x,y)−{right arrowover (V)} _(M)(x,y))

[0202] where beta<1.

[0203] Thus the choice of the agreement allows to minimize the number ofconflicts, and the errors due to the conflicts are thus also minimizedthrough applying a beta factor in the marking operation.

[0204] In a particular embodiment of the invention, the marking forcesemployed are the following: F_(R)=0.4 (for the red component); F_(G)=0.4(for the green component); F_(B)=0.8 (for the blue component), withbeta=0.9 (in the case of a conflict).

[0205] 3.6 Reconstruction of the Image

[0206] The image is then reconstructed by transformation into inversewavelets, taking into account the coefficients modified by the marking.Thus, FIG. 8b illustrates the marked “home” image, reconstructed bytransforming into inverse wavelets, and FIG. 8a shows the same imageprior to marking.

[0207] 4. Detection of the Mark

[0208] From now on we will describe the different operations implementedwhen we try to detect a mark in a watermarked color image according tothe invention. Indeed, after processing the image (transmission, JPEGcompression, median filtration or noise addition) the mark can bedetected.

[0209] 4.1 Decomposition Into Wavelets

[0210] The decomposition operation in the field of wavelets of themarked image is identical to that carried out in the context of marking,shown in §1 above.

[0211] 4.2 Definition of Vectors and Choice of Agreement

[0212] Likewise, the operations for defining vectors and the choice ofmarking agreement are identical to those previously described in §3.1,3.2 and 3.3.

[0213] 4.3 Recuperation of a Bit of the Detected Mark

[0214] For each co-ordinate, we check the proximity between the markedvector and the two reference vectors. Depending on the chosen agreement,it is possible to recognize the value of the integrated bit. The tablebelow shows all the possible situations in the reconstruction of themark. The mark is thus reconstructed bit by bit. convention 1 convention2 convention 3 {right arrow over (V)}_(A)(x,y) − {right arrow over(V)}_(B)(x,y)| < 0 0 1 |{right arrow over (V)}_(A)(x,y) − {right arrowover (V)}_(C)(x,y)| {right arrow over (V)}_(A)(x,y) − {right arrow over(V)}_(C)(x,y)| < 1 1 0 |{right arrow over (V)}_(A)(x,y) − {right arrowover (V)}_(B)(x,y)| {right arrow over (V)}_(B)(x,y) − {right arrow over(V)}_(A)(x,y)| < 0 1 1 |{right arrow over (V)}_(B)(x,y) − {right arrowover (V)}_(C)(x,y)| {right arrow over (V)}_(B)(x,y) − {right arrow over(V)}_(C)(x,y)| < 1 0 0 |{right arrow over (V)}_(B)(x,y) − {right arrowover (V)}_(A)(x,y)| {right arrow over (V)}_(C)(x,y) − {right arrow over(V)}_(A)(x,y)| < 0 1 0 |{right arrow over (V)}_(C)(x,y) − {right arrowover (V)}_(B)(x,y)| {right arrow over (V)}_(C)(x,y) − {right arrow over(V)}_(B)(x,y)| < 1 0 1 |{right arrow over (V)}_(C)(x,y) − {right arrowover (V)}_(A)(x,y)|

[0215] 4.4 Reconstruction of the Signature

[0216] The detected signature is then reconstructed from the detectedmark. To do so, the mean of the bits of the mark corresponding to acoordinate of the signature is carried out, according to a principlesimilar to that used during the construction of the mark described in§2. Thus the detected signature Ŝ is reconstructed, bit by bit.

[0217] In other terms, we start, for each coordinate of the detailedimages, by referring to the table above, which indicates the value ofthe inserted bit, for each of the agreements in FIGS. 6a to 6 c,according to the distances between the vectors.

[0218] In a particular embodiment of the invention, the signature Ŝ of16 bits is the reconstructed by calculating the mean of the 16 values ofthe mark for each of the corresponding coordinates, according to theform of the redundancy defined in §2.

[0219] 4.5 Recognizing the Marked Signature Compared to the InitialSignature

[0220] The correspondence rate between the initial signature and thedetected signature remains to be defined. To do so, we perform thecorrelation calculation between the two signatures S and Ŝ using thefollowing operation:${{cc}( {S,\hat{S}} )} = \frac{\sum{{S( {x,y} )}*{\hat{S}( {x,y} )}}}{\sqrt{{\sum{S^{2}x}},y}\sqrt{{\sum{{\hat{S}}^{2}x}},y}}$

[0221] The two signatures correspond if cc(S,Ŝ)≧T, where T is thedecision threshold of the correspondence of the signatures.

[0222] This correlation calculation allows to define the resemblancerate between the original signature S and the detected signature Ŝ. Inthis particular embodiment of the invention, we set the threshold T to0.7, so that we consider that if cc(S,Ŝ)≧0,7, the detected signaturecorresponds to the original signature.

[0223] As previously indicated, the FIGS. 8a and 8 b show an originalimage, and the corresponding marked image, according to the parametersof the particular embodiment of the invention shown above.

[0224]FIGS. 9a to 9 c illustrate, in the form of graphs, the results oftests of robustness of the mark inserted into the “home” image in FIGS.8a and 8 b.

[0225] The graphs in FIGS. 9a to 9 c respectively correspond to thetests of the mark under attack from JPEG compression, from noiseaddition and from median filtration, and represent the mean of 20measurements (use of 20 different keys K) for each attack. As can beseen, the results are stable, and the robustness of the watermarkingtechnique of the invention against these attacks is very good.

[0226] Although the present invention has been described with referenceto preferred embodiments, workers skilled in the art will recognize thatchanges may be made in form and detail without departing from the spiritand scope of the invention.

Appendix 1: Reminder on the Theory of Wavelets

[0227] 1. Introduction

[0228] The theory of wavelets allows to approximate a function (curve,surface, etc.) with different resolutions. Thus, this theory allows todescribe a function in the form of a rough approximation and of a seriesof details allowing to perfectly reconstruct the original function.

[0229] Such a multi-resolution representation (Mallat S., “A Theory forMultiresolution Signal Decomposition: the Wavelet Representation”, IEEETransactions on Pattern Analysis and Machine Intelligence, Vol. 11, No.7, July 1989, pp. 674-693.) of a function thus allows to interpret in ahierarchic manner the information held in the function. To do so, thisinformation is reorganized and a set of details appear with differentresolutions. Starting from a sequence of increasing resolutions(r_(j))_(jεZ), the details of a function with a resolution r_(j) aredefined as the difference of information between its approximation withthe resolution r_(j) and its approximation with the resolution r_(j+1).

[0230] 2. Annotations

[0231] Before presenting the foundation of the multi-resolution analysisin fuller detail, we will present the annotation used in this section.

[0232] The sets of integral and real numbers are respectively marked Zand R.

[0233] L²(R) designates the vectorial space of the measurable andintegrable one-dimensional functions f(x).

[0234] For ƒ(x)εL²(R) and g(x)εL²(R), the scalar product of f(x) andg(x) is defined by:

<ƒ(x), g(x)>=∫_(−∞) ^(+∞)ƒ(u)g(u)du.

[0235] For ƒ(x)εL²(R) and g(x)εL²(R), the convolution of f(x) and g(x)is defined by:

ƒ*g(x)=∫_(−∞) ^(+∞)ƒ(u)g(x−u)du.

[0236] L²(R²) designates the vectorial space of the functions f(x,y) oftwo measurable and integrable variables.

[0237] For ƒ(x,y)εL²(R²) and g(x,y)εL²(R²), the scalar product of f(x,y)and g(x,y) is defined by:

<ƒ(x,y), g(x,y)>=∫_(−∞) ^(+∞) ∫_(−∞) ^(+∞)∫(u,v)g(u,v)dudv.

[0238] 3. Properties of the Multi-Resolution Analysis

[0239] In this section, we present in an intuitive manner the propertiesdesired by the operator allowing to perform a multi-resolution analysisof the function. These properties are drawn from work by Mallat S., in“A Theory for Multiresolution Signal Decomposition: the WaveletRepresentation”, IEEE Transactions on Pattern Analysis and MachineIntelligence, Vol. 11, No. 7, July 1989, pp. 674-693.

[0240] Let A₂ _(^(j)) be the operator which approximates a functionƒ(x)εL²(R) with the resolution 2^(j)(j≧0) (i.e. f(x) is defined by 2^(j)samples).

[0241] The expected properties of A₂ _(^(j)) are the following:

[0242] 1. A₂ _(^(j)) is a linear operator. If A₂ _(^(j)) ƒ(x) representsthe approximation of f(x) with the resolution 2^(j), then A₂ _(^(j))ƒ(x) must not be modified when a new approximation is made with theresolution 2^(j). This principle is written A₂ _(^(j)) ∘A₂ _(^(j)) =A₂_(^(j)) and shows that the operator A₂ _(^(j)) is a projection operatorin the vectorial space V₂ _(^(j)) ⊂L²(R). This vectorial space can beinterpreted as the set of all the possible approximations with theresolution 2^(j) of the function of L²(R).

[0243] 2. Among all the possible approximations of f(x) with theresolution 2^(j), A₂ _(^(j)) ƒ(x) is the most similar to f(x). Theoperator A₂ _(^(j)) is therefore an orthogonal projection onto V₂_(^(j)) .

[0244] 3. The approximation of a function with the resolution 2^(j+1)contains all the information necessary to calculate the same functionwith the lower resolution 2^(j). This casualty property induces thefollowing relation:

∀jεZ, V₂ _(^(j)) ⊂V₂ _(^(j+1)) .

[0245] 4. The approximation operation is the same with all theresolutions. The spaces of the approximated functions can be derived onefrom another by a change in scale corresponding to the difference inresolution:

∀jεZ,ƒ(x)εV₂ _(^(j))

ƒ(2x)εV₂ _(^(j+1)) .

[0246] 5. When we calculate an approximation of f(x) with the resolution2^(j), a part of the information contained in f(x) is lost. However,when the resolution tends towards the infinitive, the approximatedfunction must converge towards the original function f(x). In likemanner, when the resolution tends towards zero, the approximatedfunction contains less information and must converge towards zero.

[0247] Every vectorial space (V₂ _(^(j)) )_(jεZ) which satisfies all ofthese properties is called approximation multi-resolution of L²(R).

[0248] 4. Multi-Resolution Analysis of a One-Dimensional Function

[0249] 4.1 Search for a Base of V₂ _(^(j))

[0250] As is indicated above, the approximation operator A₂ _(^(j)) isan orthogonal projection onto the vectorial space V₂ _(^(j)) . In orderto numerically characterize this operator, an orthogonal base of V₂_(^(j)) must be found. V₂ _(^(j)) being a vectorial space containing theapproximations of the functions of L²(R) with the resolution 2^(j),every function ƒ(x)εV₂ _(^(j)) can be seen as a vector with 2^(j)components. Therefore, 2^(j) basic functions must be found.

[0251] One of the principal theorems of the theory of waveletsstipulates that there is a single function Φ(x)εL²(R), called the scalefunction, from which we can define 2^(j) basic functions Φ_(i) ^(j)(x)of V₂ _(^(j)) via dilatation and translation of Φ(x):

Φ_(i) ^(j)(x)=Φ(2^(j) x−i), i=0, . . . , 2^(j)−1.

[0252] Approximate a function ƒ(x)εL²(R) with the resolution 2^(j)therefore returns to project in an orthogonal manner f(x) onto the 2^(j)basic functions Φ_(i) ^(j)(x). This operation consists in calculatingthe scalar product of f(x) with each of the 2^(j) basic functions Φ_(i)^(j)(x): $\begin{matrix}{{A_{2^{j}}{f(x)}} = {\sum\limits_{k = 0}^{k = {2^{j} - 1}}{{\langle{{f(u)},{\Phi_{k}^{j}(u)}}\rangle}{\Phi_{k}^{j}(x)}}}} \\{= {\sum\limits_{k = 0}^{k = {2^{j} - 1}}{{\langle{{f(u)},{\Phi ( {{2^{j}u} - k} )}}\rangle}{{\Phi ( {{2^{j}u} - k} )}.}}}}\end{matrix}$

[0253] We can demonstrate that A₂ _(^(j)) ƒ(x) can reduce theconvolution of f(x) with the low-pass filter Φ(x), evaluated at point k:

A ₂ _(^(j)) ƒ=(ƒ(u)*Φ(−2^(j) u))(k),kεZ.

[0254] As Φ(x) is a low-pass filter, A₂ _(^(j)) ƒ can be interpreted asa low-pass filtering followed by an even under-sampling.

[0255] 4.2 Construction of the Multi-Resolution Analysis

[0256] In practice, the approximated functions f (signal, image, etc.)are discrete. Supposing that the original function f(x) is defined onsamples n=2^(k)(kεZ). The maximum resolution of f(x) is then n.

[0257] Let A_(n)ƒ be the discrete approximation of f(x) with theresolution n. The casualty property (see §3 above) claims that A₂_(^(j)) ƒ can be calculated from A_(n)ƒ for every j<k.

[0258] Indeed, by calculating the projection of the 2^(j) basicfunctions Φ_(i) ^(j)(x) of V₂ _(^(j)) onto V₂ _(^(j+1)) , it can bedemonstrated that A₂ _(^(j)) ƒ can be obtained by convoluting A₂_(^(j+1)) ƒ with the low-pass filter corresponding to the scale functionand by under-sampling the result of a factor 2:${{A_{2^{j}}{f(u)}} = {\sum\limits_{k = 0}^{2^{j + 1} - 1}{{h( {k - {2u}} )}A_{2^{j + 1}}{f(k)}}}},{0 \leq u < {2^{j} - 1}}$

[0259] with h(n)=<Φ(2u),Φ(u−n)>,∀nεZ.

[0260] 4.3 The Detail Function

[0261] As is mentioned in property (5) of §3, the operation whichconsists in approximating a function f(x) with a resolution 2^(j) froman approximation with the resolution 2^(j+1) generates a loss ofinformation. This loss of information is contained in a function calleda detail function with the resolution 2^(j) and designated D₂ _(^(j)) ƒ.It is to be noted that the knowledge of D₂ _(^(j)) ƒ and A₂ _(^(j)) ƒallows to perfectly reconstruct the approximated function A₂ _(^(j+1))ƒ.

[0262] The detail function with the resolution 2^(j) is obtained byprojecting in an orthogonal manner the original function f(x) onto theorthogonal complement of V₂ _(^(j)) in V₂ _(^(j+1)) . Let W₂ _(^(j)) bethis vectorial space.

[0263] To numerically calculate this projection, an orthogonal base ofW₂ _(^(j)) must be found, i.e. 2^(j) basic functions. Another majortheorem of the theory of wavelets stipulates that from a scale functionΦ(x), it is possible to define 2^(j) basic functions of W₂ _(^(j)) .These basic functions Ψ_(i) ^(j)(x) are obtained by dilatation andtranslation of a function Ψ(x) called wavelet function:

Ψ_(i) ^(j)(x)=Ψ(2^(j) x−i),i=0, . . . , 2^(j)−1.

[0264] In the same manner as for the construction of the approximationA₂ _(^(j)) ƒ, we can demonstrate that D₂ _(^(j)) ƒ can be obtained byconvoluting the original function f(x) with the high-pass filter Ψ(x)followed by an under-sampling of a factor 2^(j):

D ₂ _(^(j)) ƒ=(ƒ(u)*Ψ(−2^(j) u))(k),kεZ.

[0265] 4.4 Extension of the Multi-Resolution Analysis of Two-DimensionalFunctions

[0266] In this section, we present the method of extending themulti-resolution analysis by wavelets to the L²(R²) functions of as theimages. To do so, we use the same theorems as those previously used.Thus, if we designate V₂ _(^(j)) the vectorial space of theapproximations of L²(R²) with the resolution 2^(j), we can demonstratethat an orthonormal base of V₂ _(^(j)) can be found by dilating andtranslating a scale function Φ(x,y)εL²(R²):

Φ_(i) ^(j)(x,y)=Φ(2^(j) x−i,2^(j) y−j),(i,j)εZ².

[0267] In the particular case of separable approximations of L²(R²), wehave Φ(x,y)=Φ(x)Φ(y) where Φ(x) is a scale function of L²(R). In thiscase, the multi-resolution analysis of a function of L²(R²) is carriedout by processing in a sequential and separable manner each of thedimensions x and y.

[0268] As in the one-dimensional case, the detail function with theresolution 2^(j) is obtained by an orthogonal projection of f(x,y) ontothe complement of V₂ _(^(j)) in V₂ _(^(j+1)) , designated W₂ _(^(j)) .In the two-dimensional case, we can demonstrate that if we designateΨ(x) the wavelet function associated with the scale function Φ(x), thenthe three functions defined by: $\begin{matrix}{{\Psi^{1}( {x,y} )} = {{\Phi (x)}{\Psi (y)}}} \\{{\Psi^{2}( {x,y} )} = {{\Psi (x)}{\Phi (y)}}} \\{{\Psi^{3}( {x,y} )} = {{\Psi (x)}{\Psi (y)}}}\end{matrix}$

[0269] are wavelet functions of L²(R²). By dilating and translatingthese three wavelet functions, we obtain an orthonormal base of W₂_(^(j)) : $\begin{matrix}{{\Psi^{1}( {x,y} )} = {{\Phi\Psi}( {{{2^{j}x} - k},{{2^{j}y} - l}} )}} \\{{\Psi^{2}( {x,y} )} = {{\Psi\Phi}( {{{2^{j}x} - k},{{2^{j}y} - l}} )}} \\{{\Psi^{3}( {x,y} )} = {{{\Psi\Psi}( {{{2^{j}x} - k},{{2^{j}y} - l}} )}.}}\end{matrix}$

[0270] The projection of f(x,y) onto these three functions of the baseW₂ _(^(j)) give three detail functions: $\begin{matrix}\begin{matrix}{{D_{2^{j}}^{1}f} = {{f( {x,y} )}*{\Phi^{j}( {- x} )}{\Psi_{j}( {- y} )}}} \\{{D_{2^{j}}^{2}f} = {{f( {x,y} )}*{\Psi^{j}( {- x} )}{\Phi_{j}( {- y} )}}}\end{matrix} \\{{D_{2^{j}}^{1}f} = {{f( {x,y} )}*{\Psi^{j}( {- x} )}{\Psi_{j}( {- y} )}}}\end{matrix}$

What is claimed is:
 1. Method of watermarking a color image that has atleast three components, characterized in that it comprises an insertionstep of a mark of watermarking, on at least one point of the image,according to an insertion rule taking into account the relative positionof at least three component vectors, for each of said componentsrespectively, associated to said at least one point.
 2. Method ofwatermarking set forth in claim 1, characterized in that for each ofsaid related points, two vectors are selected as reference vectors andone vector to be marked in order to bear said mark of watermarking. 3.Method of watermarking set forth in claim 2, characterized in that saidvector to be marked is a central vector, positioned between saidreference vectors.
 4. Method of watermarking set forth in claim 3,characterized in that the distance between any two vectors of said atleast three vectors is calculated, said reference vectors being thosethe furthest away from each other.
 5. Method of watermarking set forthin claim 4, characterized in that a border is set between said referencevectors, defining two zones respectively associated to binary values “0”and “1”.
 6. Method of watermarking set forth in claim 5, characterizedin that said border is set by the bisector between said referencevectors.
 7. Method of watermarking set forth in claim 5, characterizedin that the marking of said vector to be marked comprises a possibleshift of said vector to be marked in one of said zones, according to thebinary value for marking to be applied.
 8. Method of watermarking setforth in claim 7, characterized in that said shift has a variableamplitude, according to a marking strength chosen in accordance to atleast one local characteristic of said image.
 9. Method of watermarkingset forth in any claim 5, characterized in that the marking of saidvector to be marked comprises a possible shift of said vector to bemarked towards one or other of said reference vectors, according to thebinary marking value to be applied.
 10. Method of watermarking set forthin claim 1, characterized in that it also comprises a transformationstep into wavelets of each of said components of the image, and in thatsaid at least three component vectors are set, for each point of atleast one level of decomposition of said transformation into wavelets,for each of said components respectively.
 11. Method of watermarking setforth in claim 1, characterized in that at least two marking agreementsfor a vector are provided.
 12. Method of watermarking set forth in claim11, characterized in that the marking agreement for a given image chosenis the one limiting the risk of conflicts at the time of detecting saidmark.
 13. Method of watermarking set forth in claim 12, characterized inthat one of said marking agreements is chosen according to the number ofreference vectors in said image for each of said components.
 14. Methodof watermarking set forth in claim 6, characterized in that said markingis, at least under normal circumstances, calculated according to: {rightarrow over (V)} _(M,W)(x,y)={right arrow over (V)} _(R)(x,y)−(1−F_(M))({right arrow over (V)} _(R)(x,y)−{right arrow over (V)} _(M)(x,y))where {right arrow over (V)}_(M)(x,y) is said vector to be marked,{right arrow over (V)}_(R)(x,y) is one of said reference vectors, F_(M)is said marking force and {right arrow over (V)}_(M,W)(x,y) is saidmarked vector.
 15. Method of watermarking set forth in claim 14,characterized in that at least two marking agreements for a vector areprovided and that, in the event of a conflict, said marking iscalculated according to: {right arrow over (V)} _(M,W)(x,y)={right arrowover (V)} _(R)(x,y)−beta.(1−F _(M))({right arrow over (V)}_(R)(x,y)−{right arrow over (V)} _(M)(x,y)), where beta<1.
 16. Method ofwatermarking set forth in claim 10, characterized in that it comprises,after said step of associating a mark of watermarking, a transformationstep into inverse wavelets, issuing a marked image.
 17. Method ofwatermarking set forth in claim 1, characterized in that said mark is apseudo-random binary signature written in a redundant manner.
 18. Methodof watermarking set forth in claim 1, characterized in that saidcomponents belong to the group comprising: the RGB components; the YUVcomponents; the CMY components.
 19. Device for watermarking a colorimage that has at least three components, characterized in that itcomprises means of inserting a mark of watermarking, on at least onepoint of the image, according to an insertion rule taking into accountthe relative position of at least three component vectors, for each ofsaid components respectively, associated to said at least one point. 20.Computer program comprising program code instructions saved on a supportthat can be used in a computer to watermark a color image, having atleast three components, characterized in that said program comprisesmeans of programming that are readable by a computer in order to carryout an insertion step of a mark of watermarking, in at least one pointof the image, according to an insertion rule taking into account therelative position of at least three component vectors, for each of saidcomponents respectively, associated to said at least one point. 21.Color image having at least three components and comprising awatermarking obtained via inserting a mark of watermarking, in at leastone point of the image, according to an insertion rule taking intoaccount the relative position of at least three component vectors, foreach of said respective components, associated to said at least onepoint.
 22. Method for detecting a watermarking in a marked watermarking,performed according to claim 1, characterized in that it comprises arecovering step of a mark of watermarking, in at least one point of theimage, according to a recovering rule taking into account the relativeposition of the at least three component vectors, for each of saidcomponents respectively, associated to said at least one point. 23.Method of detection set forth in claim 22, characterized in that saidrecovering step comprises a sub-step for calculating any two distancesbetween said at least three vectors, and in that the two vectors thefurthest away from each other are the reference vectors, the thirdvector being the marked vector bearing said mark of watermarking. 24.Method of detection set forth in claim 23, characterized in that aborder between said reference vectors defining two zones respectivelyassociated to the binary values “0” and “1”, said recovering step alsocomprises a sub-step for identifying the zone in which said markedvector resides, and a step for associating a corresponding binary value.25. Method of detection set forth in claim 22, characterized in thatsaid mark is recuperated at least twice, and in that a correlationcalculation is implemented with regard to a reference signature, inorder to decide whether the watermarking is or is not correctlydetected.
 26. Device for detecting a watermarking in a watermarkedimage, performed according to claim 1, characterized in that itcomprises means of recovering a mark of watermarking, in at least onepoint of the image, according to a recovering rule taking into accountthe relative position of at least three component vectors, for each ofsaid components respectively, associated to said at least one point. 27.Computer program comprising program code instructions saved on a supportthat can be used in a computer to detect a watermarking in a watermarkedimage, performed according to claim 1, characterized in that saidprogram comprises means of programming that are readable by a computerin order to carry out a recovering step of a mark of watermarking, in atleast one point of the image, according to a recovering rule taking intoaccount the relative position of at least three component vectors, foreach of said components respectively, associated to said at least onepoint.